// exports.goodsInformation = goodsInformation;
// // function goodsInformation(objectId, shopOId, title, goodsType, status, page, num, callback) {
// //   if (page == '' || page == undefined || page == null) {
// //     page = 1;
// //   } else {
// //     page = parseInt(page);
// //   }
// //   if (num == '' || num == undefined || num == null) {
// //     num = 20
// //   } else {
// //     num = parseInt(num)
// //   }
// //   var query = new AV.Query('Shop_goods');
// //
// //
// //   if (shopOId != "" && shopOId != undefined && shopOId != null) {
// //     query.equalTo("shopOId", shopOId);
// //   }
// //   if (objectId != "" && objectId != undefined && objectId != null) {
// //     query.equalTo("objectId", objectId);
// //   }
// //   if (title != "" && title != undefined && title != null) {
// //     query.contains("title", title);
// //   }
// //   if (goodsType != "" && goodsType != undefined && goodsType != null) {
// //     query.equalTo("shop_good_type_OId", goodsType);
// //   }
// //   if (status != "" && status != undefined && status != null) {
// //     query.equalTo("status", Number(status));
// //   }
// //   query.skip((page - 1) * num);
// //   query.limit(num);
// //   query.include('shopObj');
// //   query.include('shop_good_type_Obj');
// //   query.descending('createdAt');
// //   query.find().then(function (result) {
// //       query.count().then(async function (count) {
// //         var obj = {};
// //         var data = [];
// //         var qn = 'http://7xikqi.com1.z0.glb.clouddn.com/';
// //         // var picOIdArr=[];
// //         for (var i = 0; i < result.length; i++) {
// //           var temObj = {};
// //           temObj["objectId"] = result[i].get("objectId");
// //           temObj["recommend"] = result[i].get("recommend");//店长推荐
// //           temObj["groupBuying"] = result[i].get("groupBuying");//能否团购
// //           temObj["promotePrice"] = result[i].get("promotePrice");//推广佣金
// //           temObj["shopName"] = result[i].get("shopObj") ? result[i].get("shopObj").get("name") : "";
// //           temObj["groupPrice"] = result[i].get("groupPrice");
// //           temObj["saleNums"] = result[i].get("saleNums");//销量
// //           temObj["title"] = result[i].get("title");//名称
// //           temObj["originalPrice"] = result[i].get("originalPrice");//原价
// //           temObj["status"] = result[i].get("status");//-1删除 0下架 1上架
// //           temObj["freePost"] = result[i].get("freePost");//包邮
// //           temObj["shopOId"] = result[i].get("shopOId");//店铺Id
// //           temObj["describe"] = result[i].get("describe");//描述
// //           temObj["discount"] = result[i].get("discount");//折扣
// //           temObj["price"] = result[i].get("price");//价格
// //           temObj["customize"] = result[i].get("customize");//订制 1可以 -1不可以
// //           temObj["stock"] = result[i].get("stock");//库存
// //           temObj["goodsType"] = result[i].get("shop_good_type_Obj") ? result[i].get("shop_good_type_Obj").get("name") : "";//商品分类
// //           temObj["goodsTypeOId"] = result[i].get("shop_good_type_OId") ? result[i].get("shop_good_type_OId") : "";//商品分类OId
// //           temObj["createdAt"] = moment(result[i].createdAt).format('YYYY年MM月DD HH:mm:ss');
// //           temObj["updatedAt"] = moment(result[i].updatedAt).format('YYYY年MM月DD HH:mm:ss');
// //           temObj["shopIcon"] = result[i].get("picName") ? qn + result[i].get("picName") : "";
// //           if (objectId){
// //             if (result[i].get("picArray")){
// //
// //               let picArray = []
// //               result[i].get("picArray").forEach(item=>{
// //                 picArray.push(item.id)
// //               })
// //               let shopGoodsPicQuery = new AV.Query('Shop_goodsPic')
// //               shopGoodsPicQuery.containedIn('objectId',picArray)
// //               shopGoodsPicQuery.ascending('sortNum')
// //               shopGoodsPicQuery.find().then(shopGoodsPics=>{
// //                 var shopGoodsPicArray =[]
// //                 shopGoodsPics.forEach(shopGoodsPic=>{
// //                   let shopGoodsPicUrl = qn+shopGoodsPic.get('picName')+'?imageMogr2/thumbnail/640x/format/jpg/interlace/1/auto-orient'
// //                   let tempDic = {}
// //                   tempDic.shopGoodsPicUrl = shopGoodsPicUrl
// //                   tempDic.sortNum = shopGoodsPic.get('sortNum')
// //                   shopGoodsPicArray.push(tempDic)
// //                 })
// //                 temObj["shopGoodsPicArray"] = shopGoodsPicArray
// //               }).catch(error=>{
// //                 console.log('error:',error)
// //               })
// //             }
// //           }
// //           data.push(temObj);
// //         }
// //         obj.data = data;
// //         obj.total = count;
// //         callback("null", obj);
// //       }).catch(err => {
// //         console.log(err);
// //       })
// //     }, function (error) {
// //       console.log(error);
// //       callback(error, null);
// //     }
// //   )
// // }
// //
// // exports.getGoodsEditModelArray = getGoodsEditModelArray;
// // function getGoodsEditModelArray(objectId, callback) {
// //   if (objectId != "" && objectId != undefined && objectId != null) {
// //     var query = new AV.Query('Shop_goods');
// //     query.equalTo("objectId", objectId);
// //   } else {
// //     callback('请提供ObjectId!')
// //   }
// //   query.first().then(async result => {
// //     if (result.get("modelArray")) {
// //       var modelIdArray = result.get("modelArray").map(item => {
// //         return item.id
// //       })
// //     }
// //     var modelData = []
// //     if (modelIdArray && modelIdArray.length > 0) {
// //       var modelQuery = new AV.Query('Shop_goods_model_stock');
// //       modelQuery.descending('createdAt')
// //       modelQuery.containedIn('objectId', modelIdArray)
// //       await modelQuery.find().then(modelItems => {
// //         modelData = modelItems.map(modelItem => {
// //           return {
// //             modelId: modelItem.id,
// //             stock: modelItem.get('stock'),
// //             model: modelItem.get('model'),
// //           }
// //         })
// //         callback(modelData)
// //       }).catch(modelErr => {
// //         console.log(modelErr)
// //       })
// //     } else {
// //       callback(modelData)
// //     }
// //   }).catch(error => {
// //   })
// // }
// // exports.saveModelForUpdateGoods = saveModelForUpdateGoods;
// // async function saveModelForUpdateGoods(goodsOId, models) {
// //   let query = new AV.Query("Shop_goods_model_stock")
// //   query.equalTo('goodsOId', goodsOId)
// //
// //   return new Promise(rs => {
// //     query.find().then(res => {
// //       rs(res)
// //     })
// //   }).then(res => {
// //     return new Promise(rs => {
// //       AV.Object.destroyAll(res).then(cc => {
// //         rs(false)
// //       }).catch(err => {
// //         rs(err)
// //       })
// //
// //     })
// //
// //   }).then(res=>{
// //     if (!res){
// //       var GoodsModel = AV.Object.extend('Shop_goods_model_stock');
// //       var modelArr = [];
// //       for (let i = 0; i < models.length; i++) {
// //         var goodsModel = new GoodsModel();
// //         var goodsObj = AV.Object.createWithoutData("Shop_goods", goodsOId)
// //         goodsModel.set("stock", Number(models[i].stock));
// //         goodsModel.set("model", models[i].model);
// //         goodsModel.set("goodsOId", goodsOId);
// //         goodsModel.set("goodsObj", goodsObj);
// //         goodsModel.set("sortNum", i + 1)
// //         modelArr.push(goodsModel);
// //       }
// //       return AV.Object.saveAll(modelArr).then((pic) => {
// //         return modelArr;
// //       }, (reject) => {
// //         console.log("-----------------------------" + reject)
// //         return false
// //       })
// //     }
// //   })
// //
// //
// // }

exports.getGoodsList = getGoodsList;
function getGoodsList(params, callback) {
  let objectId = params.objectId;
  let shopOId = params.shopOId;
  let title = params.title;
  let goodsType = params.goodsType;
  let status = params.status;
  let page = params.page;
  let num = params.num;

  if (page == '' || page == undefined || page == null) {
    page = 1;
  } else {
    page = parseInt(page);
  }
  if (num == '' || num == undefined || num == null) {
    num = 20
  } else {
    num = parseInt(num)
  }
  var query = new AV.Query('Shop_goods');


  if (shopOId != "" && shopOId != undefined && shopOId != null) {
    query.equalTo("shopOId", shopOId);
  }
  if (objectId != "" && objectId != undefined && objectId != null) {
    query.equalTo("objectId", objectId);
  }
  if (title != "" && title != undefined && title != null) {
    query.contains("title", title);
  }
  if (goodsType != "" && goodsType != undefined && goodsType != null) {
    query.equalTo("shop_good_type_OId", goodsType);
  }
  if (status != "" && status != undefined && status != null) {
    query.equalTo("status", Number(status));
  }
  query.skip((page - 1) * num);
  query.limit(num);
  query.include('shopObj');
  query.include('shop_good_type_Obj');
  query.descending('createdAt');
  query.find().then(function (result) {
      query.count().then(async function (count) {
        var obj = {};
        var data = [];
        var qn = 'http://tribemedia.aladada.com/';
        // var picOIdArr=[];
        for (var i = 0; i < result.length; i++) {
          var temObj = {};
          temObj["objectId"] = result[i].get("objectId");
          temObj["recommend"] = result[i].get("recommend");//店长推荐
          temObj["groupBuying"] = result[i].get("groupBuying");//能否团购
          temObj["promotePrice"] = result[i].get("promotePrice");//推广佣金
          temObj["shopName"] = result[i].get("shopObj") ? result[i].get("shopObj").get("name") : "";
          temObj["groupPrice"] = result[i].get("groupPrice");
          temObj["saleNums"] = result[i].get("saleNums");//销量
          temObj["title"] = result[i].get("title");//名称
          temObj["originalPrice"] = result[i].get("originalPrice");//原价
          temObj["status"] = result[i].get("status");//-1删除 0下架 1上架
          temObj["freePost"] = result[i].get("freePost");//包邮
          temObj["shopOId"] = result[i].get("shopOId");//店铺Id
          temObj["describe"] = result[i].get("describe");//描述
          temObj["discount"] = result[i].get("discount");//折扣
          temObj["price"] = result[i].get("price");//价格
          temObj["customize"] = result[i].get("customize");//订制 1可以 -1不可以
          temObj["stock"] = result[i].get("stock");//库存
          temObj["goodsType"] = result[i].get("shop_good_type_Obj") ? result[i].get("shop_good_type_Obj").get("name") : "";//商品分类
          temObj["goodsTypeOId"] = result[i].get("shop_good_type_OId") ? result[i].get("shop_good_type_OId") : "";//商品分类OId
          temObj["createdAt"] = moment(result[i].createdAt).format('YYYY年MM月DD HH:mm:ss');
          temObj["updatedAt"] = moment(result[i].updatedAt).format('YYYY年MM月DD HH:mm:ss');
          temObj["shopIcon"] = result[i].get("picName") ? qn + result[i].get("picName") : "";
          if (objectId){
            if (result[i].get("picArray")){

              let picArray = []
              result[i].get("picArray").forEach(item=>{
                picArray.push(item.id)
              })
              let shopGoodsPicQuery = new AV.Query('Shop_goodsPic')
              shopGoodsPicQuery.containedIn('objectId',picArray)
              shopGoodsPicQuery.ascending('sortNum')
              shopGoodsPicQuery.find().then(shopGoodsPics=>{
                var shopGoodsPicArray =[]
                shopGoodsPics.forEach(shopGoodsPic=>{
                  let shopGoodsPicUrl = qn+shopGoodsPic.get('picName')+'?imageMogr2/thumbnail/640x/format/jpg/interlace/1/auto-orient'
                  let tempDic = {}
                  tempDic.shopGoodsPicUrl = shopGoodsPicUrl
                  tempDic.sortNum = shopGoodsPic.get('sortNum')
                  shopGoodsPicArray.push(tempDic)
                })
                temObj["shopGoodsPicArray"] = shopGoodsPicArray
              }).catch(error=>{
                console.log('error:',error)
              })
            }
          }
          data.push(temObj);
        }
        obj.data = data;
        obj.total = count;
        callback("null", obj);
      }).catch(err => {
        console.log(err);
      })
    }, function (error) {
      console.log(error);
      callback(error, null);
    }
  )
}